;#############################
;命令：
;nasm -f elf64 day9_0call_1cosx_1pro.asm -o main.o && gcc main.o -o main -lc -lm -no-pie && ./main
;输出：
;cos(0.000000) = 1.000000
;cos(3.141593) = -1.000000
;#############################
extern printf
extern cos

section .data
	x1: dq 0.0
	x2: dq 3.141592653589793
	msg: db `cos(%f) = %f\n`, 0

section .text
	global main

main:
	push rbp
	mov rbp, rsp

;#############################
	movsd xmm0, [x1]
	mov eax, 1
	call cos

	mov rdi, msg
	movaps xmm1, xmm0
	movsd xmm0, [x1]
	mov eax, 2
	call printf

;#############################

;#############################
	movsd xmm0, [x2]
	mov eax, 1
	call cos

	mov rdi, msg
	movaps xmm1, xmm0
	movsd xmm0, [x2]
	mov eax, 2
	call printf

;#############################

	mov eax, 0
	leave
	ret
